package com.dxx.cloud.admin.module.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;

/**
 * <p>
 * 销售单表
 * </p>
 *
 * @author dh
 * @since 2025-06-06
 */
@Getter
@Setter
@TableName("orders")
public class OrdersEntity extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    

    /**
     * 商户id
     */
    private Long merId;

    /**
     * 门店id
     */
    private Long shopId;

    /**
     * 作废的原始订单id
     */
    private Integer invalidOrderId;

    /**
     * 订单编号
     */
    private String serialNo;

    /**
     * 用户id
     */
    private Long userId;

    /**
     * 客户id
     */
    private Long customerId;

    /**
     * 总重量
     */
    private BigDecimal weight;

    /**
     * 总件数(在有重量时传入)
     */
    private BigDecimal weightNumber;

    /**
     * 总数量
     */
    private BigDecimal number;

    /**
     * 订单状态 0挂单 1已完成
     */
    private Integer completeStatus;

    /**
     * 支付类型:1现金 2欠账 3银行卡 4其他 5存款 11门店微信二维码 12微信客户主扫 13微信客户被扫 14微信刷脸 21门店支付宝二维码 22支付宝客户扫商户 23支付宝商户扫客户 31易收宝客户扫商户 32易收宝商户扫客户
     */
    private Integer payType;

    /**
     * 支付状态 0未支付 1发起支付 2已支付 3支付超时
     */
    private Integer payStatus;

    /**
     * 收货状态 0未收货 1已收货
     */
    private Integer receiveStatus;

    /**
     * 支付金额
     */
    private BigDecimal payAccount;

    /**
     * 支付时间
     */
    private Date payTime;

    /**
     * 四舍五入类型 1四舍五入
     */
    private Integer roundType;

    /**
     * 还款状态 1已还款
     */
    private Integer repayStatus;

    /**
     * 还款号
     */
    private String repaySerialNo;

    /**
     * 还款支付类型:1现金、2微信、3微信刷脸、4支付宝、5聚合码、6欠账、7POS机和8其它结算(平台生成二维码客户去扫)
     */
    private Integer repayType;

    /**
     * 还款金额
     */
    private BigDecimal repayAccount;

    /**
     * 还款时间
     */
    private LocalDateTime repayTime;

    /**
     * 订单描述
     */
    private String remarks;

    /**
     * 商户订单号
     */
    private String outTradeNo;

    /**
     * 微信订单号,建议优先使用
     */
    private String transactionId;

    /**
     * -1 已作废
     */
    private Integer orderStatus;

    /**
     * 销售员
     */
    private String sellAgent;

    /**
     * 作废原因
     */
    private String invalidReason;

    


}
